home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 3: Developer Tools / Linux Cubed Series 3 - Developer Tools.iso / devel / debugger / ddd-1.000 / ddd-1 / ddd-1.4b / ddd / VSLBuiltin.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-11-21  |  2.1 KB  |  68 lines

  1. // $Id: VSLBuiltin.h,v 1.3 1995/11/21 13:51:17 zeller Exp $
  2. // Deklaration builtin()
  3.  
  4. // Copyright (C) 1995 Technische Universitaet Braunschweig, Germany.
  5. // Written by Andreas Zeller (zeller@ips.cs.tu-bs.de).
  6. // 
  7. // This file is part of the DDD Library.
  8. // 
  9. // The DDD Library is free software; you can redistribute it and/or
  10. // modify it under the terms of the GNU Library General Public
  11. // License as published by the Free Software Foundation; either
  12. // version 2 of the License, or (at your option) any later version.
  13. // 
  14. // The DDD Library is distributed in the hope that it will be useful,
  15. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  17. // See the GNU Library General Public License for more details.
  18. // 
  19. // You should have received a copy of the GNU Library General Public
  20. // License along with the DDD Library -- see the file COPYING.LIB.
  21. // If not, write to the Free Software Foundation, Inc.,
  22. // 675 Mass Ave, Cambridge, MA 02139, USA.
  23. // 
  24. // DDD is the data display debugger.
  25. // For details, see the DDD World-Wide-Web page, 
  26. // `http://www.cs.tu-bs.de/softech/ddd/',
  27. // or send a mail to the DDD developers at `ddd@ips.cs.tu-bs.de'.
  28.  
  29. #ifndef _Nora_VSLBuiltin_h
  30. #define _Nora_VSLBuiltin_h
  31.  
  32. #ifdef __GNUG__
  33. #pragma interface
  34. #endif
  35.  
  36.  
  37. #include "strclass.h"
  38. #include "Range.h"
  39. #include "bool.h"
  40. #include "ListBox.h"
  41.  
  42. typedef Box * (*BuiltinFunc)(ListBox *);
  43.  
  44. struct VSLBuiltin {
  45.     static int resolve(const string& func_name);
  46.     // Index zu gegebener Funktion zurueckgeben
  47.  
  48.     static BuiltinFunc func(int index);
  49.     // Funktionsaufruf zu gegebenem Index zurueckgeben
  50.  
  51.     static bool isAssoc(int functionIndex);
  52.     // Flag: ist Funktion assoziativ?
  53.  
  54.     static bool hasSideEffects(int functionIndex);
  55.     // Flag: hat Funktion Seiteneffekte?
  56.  
  57.     static char *func_name(int functionIndex);
  58.     // Name fuer interne Repraesentation ("__op_halign")
  59.  
  60.     static char *ext_name(int functionIndex);
  61.     // Name fuer externe Repraesentation ("(&)")
  62.  
  63.     static bool isInfix(int functionIndex);
  64.     // Flag: ext_name infix ausgeben?
  65. };
  66.  
  67. #endif
  68.